@file:Suppress("UNUSED")

package com.lowe.compose

import androidx.compose.ui.graphics.Color
import com.lowe.resource.theme.ThemePrimaryKey

class MaterialThemeColor(private val key: ThemePrimaryKey, private val systemInDarkTheme: Boolean) {

    fun getColorScheme() = ComposeThemeHelper.getThemeColorScheme(key)
        .run { if (systemInDarkTheme) this.DarkColors else this.LightColors }
}

object DefaultColor {

    val md_theme_light_primary = Color(0xFF9C4143)
    val md_theme_light_onPrimary = Color(0xFFFFFFFF)
    val md_theme_light_primaryContainer = Color(0xFFFFDAD9)
    val md_theme_light_onPrimaryContainer = Color(0xFF410008)
    val md_theme_light_secondary = Color(0xFF775656)
    val md_theme_light_onSecondary = Color(0xFFFFFFFF)
    val md_theme_light_secondaryContainer = Color(0xFFFFDAD9)
    val md_theme_light_onSecondaryContainer = Color(0xFF2C1515)
    val md_theme_light_tertiary = Color(0xFF745A2F)
    val md_theme_light_onTertiary = Color(0xFFFFFFFF)
    val md_theme_light_tertiaryContainer = Color(0xFFFFDEAD)
    val md_theme_light_onTertiaryContainer = Color(0xFF281900)
    val md_theme_light_error = Color(0xFFBA1A1A)
    val md_theme_light_errorContainer = Color(0xFFFFDAD6)
    val md_theme_light_onError = Color(0xFFFFFFFF)
    val md_theme_light_onErrorContainer = Color(0xFF410002)
    val md_theme_light_background = Color(0xFFFFFBFF)
    val md_theme_light_onBackground = Color(0xFF201A1A)
    val md_theme_light_surface = Color(0xFFFFFBFF)
    val md_theme_light_onSurface = Color(0xFF201A1A)
    val md_theme_light_surfaceVariant = Color(0xFFF4DDDC)
    val md_theme_light_onSurfaceVariant = Color(0xFF524343)
    val md_theme_light_outline = Color(0xFF857372)
    val md_theme_light_inverseOnSurface = Color(0xFFFBEEED)
    val md_theme_light_inverseSurface = Color(0xFF362F2E)
    val md_theme_light_inversePrimary = Color(0xFFFFB3B2)
    val md_theme_light_shadow = Color(0xFF000000)
    val md_theme_light_surfaceTint = Color(0xFF9C4143)

    val md_theme_dark_primary = Color(0xFFFFB3B2)
    val md_theme_dark_onPrimary = Color(0xFF5F1319)
    val md_theme_dark_primaryContainer = Color(0xFF7E2A2E)
    val md_theme_dark_onPrimaryContainer = Color(0xFFFFDAD9)
    val md_theme_dark_secondary = Color(0xFFE6BDBB)
    val md_theme_dark_onSecondary = Color(0xFF442929)
    val md_theme_dark_secondaryContainer = Color(0xFF5D3F3F)
    val md_theme_dark_onSecondaryContainer = Color(0xFFFFDAD9)
    val md_theme_dark_tertiary = Color(0xFFE4C18D)
    val md_theme_dark_onTertiary = Color(0xFF412D05)
    val md_theme_dark_tertiaryContainer = Color(0xFF5A4319)
    val md_theme_dark_onTertiaryContainer = Color(0xFFFFDEAD)
    val md_theme_dark_error = Color(0xFFFFB4AB)
    val md_theme_dark_errorContainer = Color(0xFF93000A)
    val md_theme_dark_onError = Color(0xFF690005)
    val md_theme_dark_onErrorContainer = Color(0xFFFFDAD6)
    val md_theme_dark_background = Color(0xFF201A1A)
    val md_theme_dark_onBackground = Color(0xFFEDE0DF)
    val md_theme_dark_surface = Color(0xFF201A1A)
    val md_theme_dark_onSurface = Color(0xFFEDE0DF)
    val md_theme_dark_surfaceVariant = Color(0xFF524343)
    val md_theme_dark_onSurfaceVariant = Color(0xFFD7C1C0)
    val md_theme_dark_outline = Color(0xFFA08C8B)
    val md_theme_dark_inverseOnSurface = Color(0xFF201A1A)
    val md_theme_dark_inverseSurface = Color(0xFFEDE0DF)
    val md_theme_dark_inversePrimary = Color(0xFF9C4143)
    val md_theme_dark_shadow = Color(0xFF000000)
    val md_theme_dark_surfaceTint = Color(0xFFFFB3B2)


    val md_theme_seed = Color(0xFFB38988)

}

object BegoniaColor {
    val begonia_red_light_primary = Color(0xFFBE0333)
    val begonia_red_light_onPrimary = Color(0xFFFFFFFF)
    val begonia_red_light_primaryContainer = Color(0xFFFFDADA)
    val begonia_red_light_onPrimaryContainer = Color(0xFF40000B)
    val begonia_red_light_secondary = Color(0xFF765657)
    val begonia_red_light_onSecondary = Color(0xFFFFFFFF)
    val begonia_red_light_secondaryContainer = Color(0xFFFFDADA)
    val begonia_red_light_onSecondaryContainer = Color(0xFF2C1516)
    val begonia_red_light_tertiary = Color(0xFF755A2F)
    val begonia_red_light_onTertiary = Color(0xFFFFFFFF)
    val begonia_red_light_tertiaryContainer = Color(0xFFFFDDB0)
    val begonia_red_light_onTertiaryContainer = Color(0xFF291800)
    val begonia_red_light_error = Color(0xFFBA1A1A)
    val begonia_red_light_errorContainer = Color(0xFFFFDAD6)
    val begonia_red_light_onError = Color(0xFFFFFFFF)
    val begonia_red_light_onErrorContainer = Color(0xFF410002)
    val begonia_red_light_background = Color(0xFFFFFBFF)
    val begonia_red_light_onBackground = Color(0xFF201A1A)
    val begonia_red_light_surface = Color(0xFFFFFBFF)
    val begonia_red_light_onSurface = Color(0xFF201A1A)
    val begonia_red_light_surfaceVariant = Color(0xFFF4DDDD)
    val begonia_red_light_onSurfaceVariant = Color(0xFF524343)
    val begonia_red_light_outline = Color(0xFF857373)
    val begonia_red_light_inverseOnSurface = Color(0xFFFBEEED)
    val begonia_red_light_inverseSurface = Color(0xFF362F2F)
    val begonia_red_light_inversePrimary = Color(0xFFFFB3B4)
    val begonia_red_light_shadow = Color(0xFF000000)
    val begonia_red_light_surfaceTint = Color(0xFFBE0333)

    val begonia_red_dark_primary = Color(0xFFFFB3B4)
    val begonia_red_dark_onPrimary = Color(0xFF680017)
    val begonia_red_dark_primaryContainer = Color(0xFF920025)
    val begonia_red_dark_onPrimaryContainer = Color(0xFFFFDADA)
    val begonia_red_dark_secondary = Color(0xFFE6BDBD)
    val begonia_red_dark_onSecondary = Color(0xFF44292A)
    val begonia_red_dark_secondaryContainer = Color(0xFF5D3F40)
    val begonia_red_dark_onSecondaryContainer = Color(0xFFFFDADA)
    val begonia_red_dark_tertiary = Color(0xFFE6C18D)
    val begonia_red_dark_onTertiary = Color(0xFF422C05)
    val begonia_red_dark_tertiaryContainer = Color(0xFF5B421A)
    val begonia_red_dark_onTertiaryContainer = Color(0xFFFFDDB0)
    val begonia_red_dark_error = Color(0xFFFFB4AB)
    val begonia_red_dark_errorContainer = Color(0xFF93000A)
    val begonia_red_dark_onError = Color(0xFF690005)
    val begonia_red_dark_onErrorContainer = Color(0xFFFFDAD6)
    val begonia_red_dark_background = Color(0xFF201A1A)
    val begonia_red_dark_onBackground = Color(0xFFECE0DF)
    val begonia_red_dark_surface = Color(0xFF201A1A)
    val begonia_red_dark_onSurface = Color(0xFFECE0DF)
    val begonia_red_dark_surfaceVariant = Color(0xFF524343)
    val begonia_red_dark_onSurfaceVariant = Color(0xFFD7C1C1)
    val begonia_red_dark_outline = Color(0xFF9F8C8C)
    val begonia_red_dark_inverseOnSurface = Color(0xFF201A1A)
    val begonia_red_dark_inverseSurface = Color(0xFFECE0DF)
    val begonia_red_dark_inversePrimary = Color(0xFFBE0333)
    val begonia_red_dark_shadow = Color(0xFF000000)
    val begonia_red_dark_surfaceTint = Color(0xFFFFB3B4)


    val begonia_red_seed = Color(0xFFF03752)
}

object IrisColor {
    val iris_blue_light_primary = Color(0xFF006689)
    val iris_blue_light_onPrimary = Color(0xFFFFFFFF)
    val iris_blue_light_primaryContainer = Color(0xFFC3E8FF)
    val iris_blue_light_onPrimaryContainer = Color(0xFF001E2C)
    val iris_blue_light_secondary = Color(0xFF4E616D)
    val iris_blue_light_onSecondary = Color(0xFFFFFFFF)
    val iris_blue_light_secondaryContainer = Color(0xFFD1E5F3)
    val iris_blue_light_onSecondaryContainer = Color(0xFF091E28)
    val iris_blue_light_tertiary = Color(0xFF605A7D)
    val iris_blue_light_onTertiary = Color(0xFFFFFFFF)
    val iris_blue_light_tertiaryContainer = Color(0xFFE6DEFF)
    val iris_blue_light_onTertiaryContainer = Color(0xFF1C1736)
    val iris_blue_light_error = Color(0xFFBA1A1A)
    val iris_blue_light_errorContainer = Color(0xFFFFDAD6)
    val iris_blue_light_onError = Color(0xFFFFFFFF)
    val iris_blue_light_onErrorContainer = Color(0xFF410002)
    val iris_blue_light_background = Color(0xFFFBFCFE)
    val iris_blue_light_onBackground = Color(0xFF191C1E)
    val iris_blue_light_surface = Color(0xFFFBFCFE)
    val iris_blue_light_onSurface = Color(0xFF191C1E)
    val iris_blue_light_surfaceVariant = Color(0xFFDCE3E9)
    val iris_blue_light_onSurfaceVariant = Color(0xFF41484D)
    val iris_blue_light_outline = Color(0xFF71787D)
    val iris_blue_light_inverseOnSurface = Color(0xFFF0F1F3)
    val iris_blue_light_inverseSurface = Color(0xFF2E3133)
    val iris_blue_light_inversePrimary = Color(0xFF78D1FF)
    val iris_blue_light_shadow = Color(0xFF000000)
    val iris_blue_light_surfaceTint = Color(0xFF006689)

    val iris_blue_dark_primary = Color(0xFF78D1FF)
    val iris_blue_dark_onPrimary = Color(0xFF003549)
    val iris_blue_dark_primaryContainer = Color(0xFF004C68)
    val iris_blue_dark_onPrimaryContainer = Color(0xFFC3E8FF)
    val iris_blue_dark_secondary = Color(0xFFB5C9D7)
    val iris_blue_dark_onSecondary = Color(0xFF20333D)
    val iris_blue_dark_secondaryContainer = Color(0xFF364954)
    val iris_blue_dark_onSecondaryContainer = Color(0xFFD1E5F3)
    val iris_blue_dark_tertiary = Color(0xFFC9C1EA)
    val iris_blue_dark_onTertiary = Color(0xFF312C4C)
    val iris_blue_dark_tertiaryContainer = Color(0xFF484264)
    val iris_blue_dark_onTertiaryContainer = Color(0xFFE6DEFF)
    val iris_blue_dark_error = Color(0xFFFFB4AB)
    val iris_blue_dark_errorContainer = Color(0xFF93000A)
    val iris_blue_dark_onError = Color(0xFF690005)
    val iris_blue_dark_onErrorContainer = Color(0xFFFFDAD6)
    val iris_blue_dark_background = Color(0xFF191C1E)
    val iris_blue_dark_onBackground = Color(0xFFE1E2E5)
    val iris_blue_dark_surface = Color(0xFF191C1E)
    val iris_blue_dark_onSurface = Color(0xFFE1E2E5)
    val iris_blue_dark_surfaceVariant = Color(0xFF41484D)
    val iris_blue_dark_onSurfaceVariant = Color(0xFFC0C7CD)
    val iris_blue_dark_outline = Color(0xFF8A9297)
    val iris_blue_dark_inverseOnSurface = Color(0xFF191C1E)
    val iris_blue_dark_inverseSurface = Color(0xFFE1E2E5)
    val iris_blue_dark_inversePrimary = Color(0xFF006689)
    val iris_blue_dark_shadow = Color(0xFF000000)
    val iris_blue_dark_surfaceTint = Color(0xFF78D1FF)


    val iris_blue_seed = Color(0xFF158BB8)
}

object CardamomTipColor {

    val cardamom_tip_green_light_primary = Color(0xFF006D43)
    val cardamom_tip_green_light_onPrimary = Color(0xFFFFFFFF)
    val cardamom_tip_green_light_primaryContainer = Color(0xFF91F7BD)
    val cardamom_tip_green_light_onPrimaryContainer = Color(0xFF002111)
    val cardamom_tip_green_light_secondary = Color(0xFF4E6355)
    val cardamom_tip_green_light_onSecondary = Color(0xFFFFFFFF)
    val cardamom_tip_green_light_secondaryContainer = Color(0xFFD0E8D6)
    val cardamom_tip_green_light_onSecondaryContainer = Color(0xFF0B1F14)
    val cardamom_tip_green_light_tertiary = Color(0xFF3C6471)
    val cardamom_tip_green_light_onTertiary = Color(0xFFFFFFFF)
    val cardamom_tip_green_light_tertiaryContainer = Color(0xFFBFE9F9)
    val cardamom_tip_green_light_onTertiaryContainer = Color(0xFF001F27)
    val cardamom_tip_green_light_error = Color(0xFFBA1A1A)
    val cardamom_tip_green_light_errorContainer = Color(0xFFFFDAD6)
    val cardamom_tip_green_light_onError = Color(0xFFFFFFFF)
    val cardamom_tip_green_light_onErrorContainer = Color(0xFF410002)
    val cardamom_tip_green_light_background = Color(0xFFFBFDF8)
    val cardamom_tip_green_light_onBackground = Color(0xFF191C1A)
    val cardamom_tip_green_light_surface = Color(0xFFFBFDF8)
    val cardamom_tip_green_light_onSurface = Color(0xFF191C1A)
    val cardamom_tip_green_light_surfaceVariant = Color(0xFFDCE5DC)
    val cardamom_tip_green_light_onSurfaceVariant = Color(0xFF404942)
    val cardamom_tip_green_light_outline = Color(0xFF717972)
    val cardamom_tip_green_light_inverseOnSurface = Color(0xFFF0F1ED)
    val cardamom_tip_green_light_inverseSurface = Color(0xFF2E312E)
    val cardamom_tip_green_light_inversePrimary = Color(0xFF75DAA2)
    val cardamom_tip_green_light_shadow = Color(0xFF000000)
    val cardamom_tip_green_light_surfaceTint = Color(0xFF006D43)

    val cardamom_tip_green_dark_primary = Color(0xFF75DAA2)
    val cardamom_tip_green_dark_onPrimary = Color(0xFF003921)
    val cardamom_tip_green_dark_primaryContainer = Color(0xFF005232)
    val cardamom_tip_green_dark_onPrimaryContainer = Color(0xFF91F7BD)
    val cardamom_tip_green_dark_secondary = Color(0xFFB5CCBB)
    val cardamom_tip_green_dark_onSecondary = Color(0xFF213528)
    val cardamom_tip_green_dark_secondaryContainer = Color(0xFF374B3E)
    val cardamom_tip_green_dark_onSecondaryContainer = Color(0xFFD0E8D6)
    val cardamom_tip_green_dark_tertiary = Color(0xFFA3CDDC)
    val cardamom_tip_green_dark_onTertiary = Color(0xFF043541)
    val cardamom_tip_green_dark_tertiaryContainer = Color(0xFF224C59)
    val cardamom_tip_green_dark_onTertiaryContainer = Color(0xFFBFE9F9)
    val cardamom_tip_green_dark_error = Color(0xFFFFB4AB)
    val cardamom_tip_green_dark_errorContainer = Color(0xFF93000A)
    val cardamom_tip_green_dark_onError = Color(0xFF690005)
    val cardamom_tip_green_dark_onErrorContainer = Color(0xFFFFDAD6)
    val cardamom_tip_green_dark_background = Color(0xFF191C1A)
    val cardamom_tip_green_dark_onBackground = Color(0xFFE1E3DF)
    val cardamom_tip_green_dark_surface = Color(0xFF191C1A)
    val cardamom_tip_green_dark_onSurface = Color(0xFFE1E3DF)
    val cardamom_tip_green_dark_surfaceVariant = Color(0xFF404942)
    val cardamom_tip_green_dark_onSurfaceVariant = Color(0xFFC0C9C0)
    val cardamom_tip_green_dark_outline = Color(0xFF8A938B)
    val cardamom_tip_green_dark_inverseOnSurface = Color(0xFF191C1A)
    val cardamom_tip_green_dark_inverseSurface = Color(0xFFE1E3DF)
    val cardamom_tip_green_dark_inversePrimary = Color(0xFF006D43)
    val cardamom_tip_green_dark_shadow = Color(0xFF000000)
    val cardamom_tip_green_dark_surfaceTint = Color(0xFF75DAA2)

    val cardamom_tip_green_seed = Color(0xFF5DBE8A)

}